package jpa.entitys.promis.construction;

import java.io.Serializable;

import javax.persistence.*;

import java.math.BigDecimal;
import java.util.Date;


/**
 * The persistent class for the PAYMENT_REQUEST_DEDUCT database table.
 * 
 */
@Entity
@Table(name="PAYMENT_REQUEST_DEDUCT")
@NamedQueries({
    @NamedQuery(name = "PaymentRequestDeduct.findAll", query = " SELECT c FROM PaymentRequestDeduct c "),
    @NamedQuery(name = "PaymentRequestDeduct.findById", query = " SELECT c FROM PaymentRequestDeduct c WHERE c.id = :Id "),
    @NamedQuery(name = "PaymentRequestDeduct.findByStaging", query = " SELECT c FROM PaymentRequestDeduct c WHERE c.syncIsstaging = :syncIsstaging")
})
public class PaymentRequestDeduct extends jpa.entitys.common.CommonEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	@EmbeddedId
	private PaymentRequestDeductPK id;
	
	@Override public String toString() { return org.apache.commons.lang.builder.ToStringBuilder.reflectionToString(this);}

	@Column(name="ACTIVITY_CHILD", length=30)
	private String activityChild;

	@Column(name="ACTIVITY_PARENT", length=30)
	private String activityParent;

	@Column(name="BUILDING_PHASE", length=30)
	private String buildingPhase;

	@Column(name="CREATED_BY")
	private String createdBy;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="CREATED_ON")
	private Date createdOn;

	@Column(name="FEE_AMOUNT", precision=22)
	private BigDecimal feeAmount;

	@Column(name="FEE_RATE", precision=22)
	private BigDecimal feeRate;

	@Column(name="ITEM_CODE", length=30)
	private String itemCode;

	@Column(name="ITEM_QTY", precision=22)
	private BigDecimal itemQty;

	@Column(name="ITEM_RATE", precision=22)
	private BigDecimal itemRate;

	@Column(name="ITEM_UM", length=30)
	private String itemUm;

	@Column(name="LAST_UPD_BY")
	private String lastUpdBy;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="LAST_UPD_ON")
	private Date lastUpdOn;

	@Column(name="LINK_FILE_ID", precision=22)
	private BigDecimal linkFileId;

	@Column(name="PAYMENT_REQUEST_DEDUCT_ID", length=100)
	private String paymentRequestDeductId;

	@Column(name="PERMANENT_RECEIPTS", length=1)
	private String permanentReceipts;

	@Column(name="PO_NO", precision=22)
	private BigDecimal poNo;

	@Column(name="PO_SERIES", length=4)
	private String poSeries;

	@Column(name="PO_TYPE", length=2)
	private String poType;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="REQUEST_DATE")
	private Date requestDate;

	@Column(length=1)
	private String status;

	@Column(name="SYNC_CREATEDBY", length=100)
	private String syncCreatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_CREATEDON")
	private Date syncCreatedon;

	@Column(name="SYNC_EXTERNAL_REF_KEY", length=100)
	private String syncExternalRefKey;

	@Column(name="SYNC_EXTERNAL_REF_NO", length=100)
	private String syncExternalRefNo;

	@Column(name="SYNC_ISSYNC", length=1)
	private String syncIssync;

	@Column(name="SYNC_UPDATEDBY", length=100)
	private String syncUpdatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_UPDATEDON")
	private Date syncUpdatedon;

	@Column(name="TOTAL_COST", precision=22)
	private BigDecimal totalCost;

	@Column(name="TOTAL_COST_BF_VAT", precision=22)
	private BigDecimal totalCostBfVat;

	@Column(name="TOTAL_DEDUCT", precision=22)
	private BigDecimal totalDeduct;

	@Column(name="UNIT_ID", precision=22)
	private BigDecimal unitId;

	@Column(name="UNIT_NUMBER", length=30)
	private String unitNumber;

	@Column(name="VAT_AMOUNT", precision=22)
	private BigDecimal vatAmount;

	@Column(name="ZONE_CODE", length=30)
	private String zoneCode;
	
	@Column(name="SYNC_ISSTAGING", length=1)
	private String syncIsstaging;

	
    public PaymentRequestDeduct() {
    }
    

	/**
	 * @return the syncIsstaging
	 */
	public String getSyncIsstaging() {
		return syncIsstaging;
	}


	/**
	 * @param syncIsstaging the syncIsstaging to set
	 */
	public void setSyncIsstaging(String syncIsstaging) {
		this.syncIsstaging = syncIsstaging;
	}


	public PaymentRequestDeductPK getId() {
		return this.id;
	}

	public void setId(PaymentRequestDeductPK id) {
		this.id = id;
	}
	
	public String getActivityChild() {
		return this.activityChild;
	}

	public void setActivityChild(String activityChild) {
		this.activityChild = activityChild;
	}

	public String getActivityParent() {
		return this.activityParent;
	}

	public void setActivityParent(String activityParent) {
		this.activityParent = activityParent;
	}

	public String getBuildingPhase() {
		return this.buildingPhase;
	}

	public void setBuildingPhase(String buildingPhase) {
		this.buildingPhase = buildingPhase;
	}

	public String getCreatedBy() {
		return this.createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	public Date getCreatedOn() {
		return this.createdOn;
	}

	public void setCreatedOn(Date createdOn) {
		this.createdOn = createdOn;
	}

	public BigDecimal getFeeAmount() {
		return this.feeAmount;
	}

	public void setFeeAmount(BigDecimal feeAmount) {
		this.feeAmount = feeAmount;
	}

	public BigDecimal getFeeRate() {
		return this.feeRate;
	}

	public void setFeeRate(BigDecimal feeRate) {
		this.feeRate = feeRate;
	}

	public String getItemCode() {
		return this.itemCode;
	}

	public void setItemCode(String itemCode) {
		this.itemCode = itemCode;
	}

	public BigDecimal getItemQty() {
		return this.itemQty;
	}

	public void setItemQty(BigDecimal itemQty) {
		this.itemQty = itemQty;
	}

	public BigDecimal getItemRate() {
		return this.itemRate;
	}

	public void setItemRate(BigDecimal itemRate) {
		this.itemRate = itemRate;
	}

	public String getItemUm() {
		return this.itemUm;
	}

	public void setItemUm(String itemUm) {
		this.itemUm = itemUm;
	}

	public String getLastUpdBy() {
		return this.lastUpdBy;
	}

	public void setLastUpdBy(String lastUpdBy) {
		this.lastUpdBy = lastUpdBy;
	}

	public Date getLastUpdOn() {
		return this.lastUpdOn;
	}

	public void setLastUpdOn(Date lastUpdOn) {
		this.lastUpdOn = lastUpdOn;
	}

	public BigDecimal getLinkFileId() {
		return this.linkFileId;
	}

	public void setLinkFileId(BigDecimal linkFileId) {
		this.linkFileId = linkFileId;
	}

	public String getPaymentRequestDeductId() {
		return this.paymentRequestDeductId;
	}

	public void setPaymentRequestDeductId(String paymentRequestDeductId) {
		this.paymentRequestDeductId = paymentRequestDeductId;
	}

	public String getPermanentReceipts() {
		return this.permanentReceipts;
	}

	public void setPermanentReceipts(String permanentReceipts) {
		this.permanentReceipts = permanentReceipts;
	}

	public BigDecimal getPoNo() {
		return this.poNo;
	}

	public void setPoNo(BigDecimal poNo) {
		this.poNo = poNo;
	}

	public String getPoSeries() {
		return this.poSeries;
	}

	public void setPoSeries(String poSeries) {
		this.poSeries = poSeries;
	}

	public String getPoType() {
		return this.poType;
	}

	public void setPoType(String poType) {
		this.poType = poType;
	}

	public Date getRequestDate() {
		return this.requestDate;
	}

	public void setRequestDate(Date requestDate) {
		this.requestDate = requestDate;
	}

	public String getStatus() {
		return this.status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getSyncCreatedby() {
		return this.syncCreatedby;
	}

	public void setSyncCreatedby(String syncCreatedby) {
		this.syncCreatedby = syncCreatedby;
	}

	public Date getSyncCreatedon() {
		return this.syncCreatedon;
	}

	public void setSyncCreatedon(Date syncCreatedon) {
		this.syncCreatedon = syncCreatedon;
	}

	public String getSyncExternalRefKey() {
		return this.syncExternalRefKey;
	}

	public void setSyncExternalRefKey(String syncExternalRefKey) {
		this.syncExternalRefKey = syncExternalRefKey;
	}

	public String getSyncExternalRefNo() {
		return this.syncExternalRefNo;
	}

	public void setSyncExternalRefNo(String syncExternalRefNo) {
		this.syncExternalRefNo = syncExternalRefNo;
	}

	public String getSyncIssync() {
		return this.syncIssync;
	}

	public void setSyncIssync(String syncIssync) {
		this.syncIssync = syncIssync;
	}

	public String getSyncUpdatedby() {
		return this.syncUpdatedby;
	}

	public void setSyncUpdatedby(String syncUpdatedby) {
		this.syncUpdatedby = syncUpdatedby;
	}

	public Date getSyncUpdatedon() {
		return this.syncUpdatedon;
	}

	public void setSyncUpdatedon(Date syncUpdatedon) {
		this.syncUpdatedon = syncUpdatedon;
	}

	public BigDecimal getTotalCost() {
		return this.totalCost;
	}

	public void setTotalCost(BigDecimal totalCost) {
		this.totalCost = totalCost;
	}

	public BigDecimal getTotalCostBfVat() {
		return this.totalCostBfVat;
	}

	public void setTotalCostBfVat(BigDecimal totalCostBfVat) {
		this.totalCostBfVat = totalCostBfVat;
	}

	public BigDecimal getTotalDeduct() {
		return this.totalDeduct;
	}

	public void setTotalDeduct(BigDecimal totalDeduct) {
		this.totalDeduct = totalDeduct;
	}

	public BigDecimal getUnitId() {
		return this.unitId;
	}

	public void setUnitId(BigDecimal unitId) {
		this.unitId = unitId;
	}

	public String getUnitNumber() {
		return this.unitNumber;
	}

	public void setUnitNumber(String unitNumber) {
		this.unitNumber = unitNumber;
	}

	public BigDecimal getVatAmount() {
		return this.vatAmount;
	}

	public void setVatAmount(BigDecimal vatAmount) {
		this.vatAmount = vatAmount;
	}

	public String getZoneCode() {
		return this.zoneCode;
	}

	public void setZoneCode(String zoneCode) {
		this.zoneCode = zoneCode;
	}

}